package com.justgame.project.service.system.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import com.justgame.project.cloud.base.entity.BaseTable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

/**
*
* 用户功能操作间隔限制表
*
* @tableName sys_user_operation_log
* @author Zwb
*/
@Data
@TableName("sys_user_operation_log")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="SysUserOperationLog对象", description="用户功能操作间隔限制表")
public class SysUserOperationLog extends BaseTable {
    /**
     * 用户信息
     */
    @ApiModelProperty(value = "用户信息")
    private Long userInfoId;

    /**
     * 操作类型
     */
    @ApiModelProperty(value = "操作类型")
    private Operation operation;

    /**
     * 操作开始日期
     */
    @ApiModelProperty(value = "操作开始日期")
    private LocalDateTime startDate;

    /**
     * 结束限制日期
     */
    @ApiModelProperty(value = "结束限制日期")
    private LocalDateTime endDate;

    /**
     * 操作类型 枚举值
     */
    public enum Operation{
        /**
         * 用户修改头像
         */
        UPDATE_AVATAR,
        /**
         * 用户修改昵称
         */
        UPDATE_NICKNAME,
        /**
         * 发送短信认证
         */
        SEND_AUTH_SMS,
        /**
         * 发送邮箱认证
         */
        SEND_AUTH_MAIL,
        /**
         * 修改手机号绑定
         */
        UPDATE_PHONE,
        /**
         * 修改邮箱绑定
         */
        UPDATE_MAIL
    }

}
